package 笔试题;

import java.util.*;

public class lk_2009 {
    public static void main(String[] args) {
        System.out.println(minOperations(new int[]{8, 5, 9, 9, 8, 4}));
    }
    public static int minOperations(int[] nums) {
        int c = nums.length;
//        Set<Integer> ss = new TreeSet<>();
//        for (int n:nums){
//            ss.add(n);
//        }
//        Integer[] s = new  Integer[ss.size()];
//        ss.toArray(s);
        Set<Integer>  uniqueNum = new HashSet<>();
        for(int num : nums){
            uniqueNum.add(num);
        }
        Integer[] s = new Integer[uniqueNum.size()];
        uniqueNum.toArray(s);
        Arrays.sort(s);
        int max = 0;
        int h = 1;
        int z = 2;
        int zz = 0;
        for (int i=0;i<s.length;i++){
            z--;
            zz = s[i]+c;
           for (;h<s.length;h++){
               if(s[h]<zz){
                   z++;
               }else {
                   break;
               }
           }
           max = Math.max(max,z);
        }
        return c-max;
    }
}
